-
Notifications
You must be signed in to change notification settings - Fork 143
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Refactor brew detection and brew handling #512
base: master
Are you sure you want to change the base?
Conversation
43a0dbd
to
ff9ee38
Compare
b5d9015
to
ff9ee38
Compare
6137f3d
to
91d1f46
Compare
cca508b
to
c6db26a
Compare
any thoughs about giving the manualFlush his own mashine State @kjyv @fiendie |
4af1bf3
to
a2afe2b
Compare
kManualFlush added :) |
4475993
to
db7e1d8
Compare
db7e1d8
to
8a1c2b4
Compare
remove brewdetection works only with brewcontrol rename isbrewdetected to brewOn
adds brewtimer without controlling pump/valve
remove more SW brew detection stuff rename brewtimesoftware to brewPidTime to clarify its function fix debug log output for disable PID while brew is running clang formated
remove brew PID time (former Brew SW Time) because it isn´t used anymore after removing sw brew detection
now with brewControl 0 mashine goes to kBrew when a brew is running
SHOTTIMERDISPLAYDELAY is now broken, needs to be reworked
if brew is finished, by target or by hand, lastBrewTimeMillis is set from brewtimer() or brew() displayshottimer() uses lastBrewTimeMillis to show as long as SHOTTIMERDISPLAYDELAY is same is for standard, minimal template upright and rotate upright is still broken remove lastBrewTime store brew time always in timeBrewed and only reset timeBrewed on the a new brew brew time in all templates will only be shown when brew is running add timeBrewed to MQTT
take manual flush out of checkbrewswitch manual flush with own mashineState kManualFlush manual flush reset standby time and ends standby remove any brew stuff out of checkbrewswitch() rename brewState and brewswitchstate add manualFlush to display templates and shottimer
clean up and less states for brew() and backflush() removed brewOn and used bool brew() removed manualFlushOn and used bool manualFlush() move all backflush related stuff into brewHandler fix includes for brewHandler.h backflush() is now only called if mashineState is kBackflush if mashine is in kBackflush brewswitch controls backflush and it is not possible to start a brew removed boolean, use bool moved PID and Heater disable into mashine state kBachflush
disable PID for backflush with global PID ON/OFF
adding case kInteger to assignMQTTParam() so backflushCycles could be changed thru MQTT
if mashine is in any other state then kPidNormal, it should not be possible to switch to states like kBrew, kManualFlush, kBackflush, etc.
FEATURE_SHOT_TIMER SHOT_TIMER_DISPLAY_DELAY FEATURE_HEATING_LOGO FEATURE_PID_OFF_LOGO bump ESPAsyncWebServer: another change in release structure -> new version -> broke build check
cleanup in main.cpp adding translations rename some scale vars to be more precice do not show weight in full screen shot timer during manual flush add weightBrewed to MQTT sensors and HA auto discovery
8a1c2b4
to
f39a2c9
Compare
This PR removed the Brew detection in total
-> SW Brewdetection is gone (wasn´t really accurately)
-> Removed Quickmill/Thermoblock steam mode detection (was broken)
-> Removed kShotTimerAfterBrew and kBrewdetectionTrailing
-> Removed lastTimeBrewed
-> Backflush isn´t possible anymore if mashine is in steam mode
Adding:
Detection for brew works in total over Brewswitch input
Brewswitch Pin could be used for a switch or a optocoupler
removed brewOn from checkbrewswitch() to brew() -> this triggers all brew related stuff (eg kBrew)
new brew timer for "pid+" (optocoupler)
showing brew time and shottimer based on kBrew
SHOTTIMERDISPLAYDELAY is now directly in the display templates
manual flush in own function and mashine state
manual flush triggers resetStandbyTime and can end standbyMode
add manual flush to display templates
FEATURE_BREWCONTROL is now set on the website
moved all brew or backflush related stuff into brewHandler.h
moved Display related settings onto website
rework shot timer in scale display template
to discuss:
Flush Timer configurable and seperated from shottimer?
show heating logo if steam temp isn´t reached?
show sections on website only if needed
add pressure to shot timer?